package com.hjxr.sysadmin.zsj.service;

import java.util.List;
import java.util.Map;

import com.hjxr.sysadmin.zsj.domain.Inchainlocation;
import com.hjxr.sysadmin.zsj.domain.Industrialchain;

/**
 * 产业链信息Service接口
 * 
 * @author zc
 * @date 2021-04-15
 */
public interface IIndustrialchainService 
{
    /**
     * 查询产业链信息
     * 
     * @param id 产业链信息ID
     * @return 产业链信息
     */
    public Industrialchain selectIndustrialchainById(Long id);

    /**
     * 查询产业链信息列表
     * 
     * @param industrialchain 产业链信息
     * @return 产业链信息集合
     */
    public List<Industrialchain> selectIndustrialchainList(Industrialchain industrialchain);

    /**
     * 新增产业链信息
     * 
     * @param industrialchain 产业链信息
     * @return 结果
     */
    public int insertIndustrialchain(Industrialchain industrialchain);

    /**
     * 修改产业链信息
     * 
     * @param industrialchain 产业链信息
     * @return 结果
     */
    public int updateIndustrialchain(Industrialchain industrialchain);

    /**
     * 批量删除产业链信息
     * 
     * @param ids 需要删除的产业链信息ID
     * @return 结果
     */
    public int deleteIndustrialchainByIds(Long[] ids);

    /**
     * 删除产业链信息信息
     * 
     * @param id 产业链信息ID
     * @return 结果
     */
    public int deleteIndustrialchainById(Long id);

    /**
     * 校验产业链名称是否唯一
     *
     * @param industrialchain 产业链信息
     * @return 结果
     */
    public String checkInchainNameUnique(Industrialchain industrialchain);

    /**
     * 是否存在产业链子节点
     *
     * @param id 产业链ID
     * @return 结果 true 存在 false 不存在
     */
    public boolean hasChildByInchainId(Long id);

    /**
     * 查询区域主导产业信息
     * @param inchainid
     * @return
     */
    public Inchainlocation selectIndustryById(Long inchainid);

    /**
     * 新增区域主导产业信息
     * @param inchainlocation
     * @return
     */
    public int insertIndustry(Inchainlocation inchainlocation);

    /**
     * 修改区域主导产业信息
     * @param inchainlocation
     * @return
     */
    public int updateIndustry(Inchainlocation inchainlocation);
}
